package com.briup.day29;


import java.io.BufferedReader;
import java.io.FileReader;
import java.io.IOException;
import java.io.ObjectOutputStream;
import java.net.Socket;
import java.util.ArrayList;
import java.util.List;

/**
 * @author ThinkBook
 */
public class TestObjectClient {
    public static void main(String[] args) throws IOException {
        // 1.创建一个客户端对象
        Socket socket = new Socket("127.0.0.1", 8888);
        System.out.println("客户端启动成功，socket：" + socket);
        // 2.获取文件中的数据（BufferedReader）
        BufferedReader br = new BufferedReader(
                new FileReader("src/file/student.txt")
        );
        String line;
        // 创建学生对象的集合
        List<Student> students = new ArrayList<>();
        while ((line = br.readLine()) != null) {
            // line就是对应的一行数据
            // 010.tom.19
            // 将不同位置上的属性赋给对应的学生对象
            String[] split = line.split("\\.");
            Student student = new Student(split[0], split[1], Integer.parseInt(split[2]));
            students.add(student);
        }

        // 将学生对象的集合发送给服务器
        ObjectOutputStream oos = new ObjectOutputStream(
                socket.getOutputStream()
        );
        oos.writeObject(students);
        System.out.println("学生集合传输完成");

        // 关闭资源
        oos.close();
        br.close();
        socket.close();
    }

}
